package cn.virens.database.mysql.model.sys;

import java.io.Serializable;

import javax.persistence.Column;
import javax.persistence.Table;

import cn.hutool.core.util.StrUtil;
import cn.virens.database.common.BaseModel;

@Table(name = "sys_message")
public class SysMessage extends BaseModel implements Serializable {
	/**
	 * 消息类型：0普通消息，1系统消息
	 */
	private Integer type;

	/**
	 * 状态：0未推送,1未读,2已读
	 */
	private Integer state;

	/**
	 * 消息标题
	 */
	private String title;

	/**
	 * 消息摘要
	 */
	private String abstr;

	/**
	 * 消息参数
	 */
	private String param;

	/**
	 * 发件人
	 */
	private String sender;

	/**
	 * 发件人姓名
	 */
	@Column(name = "sender_name")
	private String senderName;

	/**
	 * 收件人
	 */
	private String receive;

	/**
	 * 收件人姓名
	 */
	@Column(name = "receive_name")
	private String receiveName;

	/**
	 * 消息内容
	 */
	private String content;

	private static final long serialVersionUID = 1L;

	/**
	 * 获取消息类型：0普通消息，1系统消息
	 *
	 * @return type - 消息类型：0普通消息，1系统消息
	 */
	public Integer getType() {
		return type;
	}

	/**
	 * 设置消息类型：0普通消息，1系统消息
	 *
	 * @param type 消息类型：0普通消息，1系统消息
	 */
	public void setType(Integer type) {
		this.type = type;
	}

	/**
	 * 获取状态：0未推送,1未读,2已读
	 *
	 * @return state - 状态：0未推送,1未读,2已读
	 */
	public Integer getState() {
		return state;
	}

	/**
	 * 设置状态：0未推送,1未读,2已读
	 *
	 * @param state 状态：0未推送,1未读,2已读
	 */
	public void setState(Integer state) {
		this.state = state;
	}

	/**
	 * 获取消息标题
	 *
	 * @return title - 消息标题
	 */
	public String getTitle() {
		return title;
	}

	/**
	 * 设置消息标题
	 *
	 * @param title 消息标题
	 */
	public void setTitle(String title) {
		this.title = StrUtil.trim(title);
	}

	/**
	 * 获取消息摘要
	 *
	 * @return abstr - 消息摘要
	 */
	public String getAbstr() {
		return abstr;
	}

	/**
	 * 设置消息摘要
	 *
	 * @param abstr 消息摘要
	 */
	public void setAbstr(String abstr) {
		this.abstr = StrUtil.trim(abstr);
	}

	/**
	 * 获取消息参数
	 *
	 * @return param - 消息参数
	 */
	public String getParam() {
		return param;
	}

	/**
	 * 设置消息参数
	 *
	 * @param param 消息参数
	 */
	public void setParam(String param) {
		this.param = StrUtil.trim(param);
	}

	/**
	 * 获取发件人
	 *
	 * @return sender - 发件人
	 */
	public String getSender() {
		return sender;
	}

	/**
	 * 设置发件人
	 *
	 * @param sender 发件人
	 */
	public void setSender(String sender) {
		this.sender = StrUtil.trim(sender);
	}

	/**
	 * 获取发件人姓名
	 *
	 * @return sender_name - 发件人姓名
	 */
	public String getSenderName() {
		return senderName;
	}

	/**
	 * 设置发件人姓名
	 *
	 * @param senderName 发件人姓名
	 */
	public void setSenderName(String senderName) {
		this.senderName = StrUtil.trim(senderName);
	}

	/**
	 * 获取收件人
	 *
	 * @return receive - 收件人
	 */
	public String getReceive() {
		return receive;
	}

	/**
	 * 设置收件人
	 *
	 * @param receive 收件人
	 */
	public void setReceive(String receive) {
		this.receive = StrUtil.trim(receive);
	}

	/**
	 * 获取收件人姓名
	 *
	 * @return receive_name - 收件人姓名
	 */
	public String getReceiveName() {
		return receiveName;
	}

	/**
	 * 设置收件人姓名
	 *
	 * @param receiveName 收件人姓名
	 */
	public void setReceiveName(String receiveName) {
		this.receiveName = StrUtil.trim(receiveName);
	}

	/**
	 * 获取消息内容
	 *
	 * @return content - 消息内容
	 */
	public String getContent() {
		return content;
	}

	/**
	 * 设置消息内容
	 *
	 * @param content 消息内容
	 */
	public void setContent(String content) {
		this.content = StrUtil.trim(content);
	}
}